/*
 * Sender.h
 *
 *  Created on: Oct 23, 2011
 *      Author: gonzalo
 */

#ifndef SENDER_H_
#define SENDER_H_

#include "../Threads/Thread.h"
#include "Conexion.h"

class Sender: public Thread,Conexion {
public:
	Sender(SocketProtocoloPlano* socket,ColaMensajes* mensajes,const bool* conexionActiva);
	Sender(unsigned int port,std::string host,ColaMensajes* mensajes,const bool* conexionActiva);
	Sender(unsigned int port,ColaMensajes* mensajes,const bool* conexionActiva);
	virtual ~Sender();

	/**
	* Envia un DTO : El dto es procesado acorde al protocolo
	* y luego enviado por el socket
	*/
	int enviar(DTO* dto);

	void serverHandshake();
protected:
	virtual void* run();
};

#endif /* SENDER_H_ */
